home *** CD-ROM | disk | FTP | other *** search
/ 8bitfiles.net/archives / archives.tar / archives / compuserve-file-archive / 18 Board & Card Games / BJACK.BIN (.txt) < prev    next >
Encoding:
Commodore BASIC  |  2019-04-13  |  3.8 KB  |  102 lines

  1. 1 L=RND(-TI):POKE53280,8:POKE53281,7:POKE646,0:GOSUB100:GOSUB80:GOTO20
  2. 2 PRINTLEFT$(D$,3*H-4*(W=1)-11*(W=2)+2)LEFT$(R$,10+4*K);:RETURN
  3. 3 PRINTC$(CA)CD$CL$MID$(SU$,SU,1)CU$GR$Z$Z$CD$CL$CL$Z$Z$CD$CL$CL$CL$Z$Z$Z$;:RETURN
  4. 4 SU=INT(D%(C)/13+.01)+1:CA=INT(13*(D%(C)/13-INT(D%(C)/13)+.01)):RETURN
  5. 5 PRINTMID$(BK$,1-(D%(C)<26),1);:CV=CA+1:IFCV>9THENCV=10
  6. 6 IFCV=1THENCV=11:A(L)=A(L)+1
  7. 7 C(L)=C(L)+CV:C=C+1:IFK<2THENZ%(K,W)=C-1
  8. 8 GOTO15
  9. 9 GOSUB2:GOSUB4:GOSUB5:GOSUB3:RETURN
  10. 10 PRINTB1$BK$P$(W)" TOTAL=      "CL$CL$CL$CL$CL$CL$C(L):RETURN
  11. 11 PRINTLEFT$(D$,7*W+2*H+1)RV$GR$"*";:IFCA>0THENPRINT"WIN"CA:GW=GW+1:GOTO14
  12. 12 IFCA<0THENPRINT"LOSE";-CA:GOTO14
  13. 13 PRINT"EVEN"
  14. 14 M(W)=M(W)+CA:GOTO92
  15. 15 IFC(L)>21ANDA(L)>0THENC(L)=C(L)-10:A(L)=A(L)-1:GOTO15
  16. 16 RETURN
  17. 20 P=1:DIMP$(2),M(P),C(4),B(P+2),D%(51),C$(12),A(4),Z%(1,4):PRINTCD$CD$
  18. 23 PRINT"YOUR NAME PLEASE":P$(1)="PLAYER":INPUTP$(1):PL$=P$(1)
  19. 24 IFLEN(P$(1))>=7THENP$(1)=LEFT$(P$(1),7):PL$=P$(1):GOTO27
  20. 25 Y=7-LEN(P$(1)):P$(1)=LEFT$(SP$,Y)+P$(1)
  21. 27 P$(0)=" DEALER":FORL=0TO51:D%(L)=L:NEXT:C=50
  22. 28 M(1)=1000:FORL=0TO12:READC$(L):NEXT
  23. 29 PRINTSC$RV$GR$;:FORL=0TO12:PRINTSP$;:NEXT:GP=GP+1
  24. 30 PRINTHM$CD$CD$Z$RV$"DEALER":PRINTRV$CD$CD$P$(1)
  25. 31 XX=INT(30+20*RND(1)):IFC<XXTHEN34
  26. 32 PRINTB3$BK$,,"SHUFFLING";
  27. 33 FORL=51TO1STEP-1:Q=INT(RND(1)*(L+1)):R=D%(L):D%(L)=D%(Q):D%(Q)=R:NEXT:C=0
  28. 34 PRINTB3$BK$,,"BET $5 TO $500"
  29. 35 PRINT,,PL$" HAS $"M(1)
  30. 36 GOSUB250:INPUTB$:B(1)=VAL(B$):IFB(1)<5ORB(1)>500THEN97
  31. 37 B(1)=INT(B(1)):A(1)=0:PRINTB3$SP$SP$SP$;:FORL=0TO4:C(L)=0:NEXT
  32. 38 H=0:FORK=0TO1:FORW=0TOP:L=W+2*H:IFW+K>0THENGOSUB9:GOTO40
  33. 39 GOSUB2:GOSUB4:GOSUB5:GOSUB300
  34. 40 NEXT:NEXT:FORW=1TOP:FORH=0TO0:L=W+2*H:SF=0
  35. 41 GOSUB10:IFC(W)=21THENGOSUB90:GOTO63
  36. 42 PRINTB3$"OPTIONS:"
  37. 43 PRINTD$SP$D$RV$"H"RO$"IT/"RV$"S"RO$"TAY/"RV$"O"RO$"THER"
  38. 44 GOSUB95:IFA$="H"THENK=2:GOTO59
  39. 45 IFA$="S"THEN63
  40. 46 IFA$<>"O"THEN44
  41. 47 PRINTD$RV$"D"RO$"OUBLE/"RV$"G"RO$"IVE UP/"RV$"RETURN"RO$;
  42. 48 C0=C:C=Z%(0,W):GOSUB4:CB=CA:C=Z%(1,W):GOSUB4:IFCA=CBTHENGOSUB200
  43. 49 GOSUB95:C=C0:IFA$=CHR$(13)THENSF=0:GOTO42
  44. 50 IFA$="D"THENK=2:B(L)=B(L)*2:GOSUB9:ON1-(C(W)>21ANDA(W)=0)GOTO63,56
  45. 51 IFA$="G"THENCA=-INT(B(W)/2):C(W)=0:GOSUB11:GOTO63
  46. 52 IF(A$="S"ANDSF=0)ORA$<>"S"THEN49
  47. 53 GP=GP+1
  48. 54 B(W+2)=B(W):A(W)=0:A(W+2)=0:H=0:K=0:C0=C:C=Z%(0,W):L=W+2*H:C(L)=0:GOSUB9:H=1:L=W+2*H
  49. 55 C(L)=0:C=Z%(1,W):GOSUB9:C=C0:K=1:FORH=0TO1:L=W+2*H:GOSUB9:NEXT:FORH=0TOSF:K=2:L=W+2*H
  50. 56 GOSUB10:IFC(L)>21THENPRINTB2$" BUST!":CA=-B(W):GOSUB11:C(L)=0:GOTO63
  51. 57 PRINTD$SP$D$RV$"H"RO$"IT/"RV$"S"RO$"TAY";:IFK=2THENPRINT"/"RV$"D"RO$"OUBLE"
  52. 58 GOSUB95
  53. 59 IFA$="H"THENGOSUB9:K=K+1:GOTO56
  54. 60 IFA$="S"THEN63
  55. 61 IFA$<>"D"OR(A$="D"ANDK<>2)THEN58
  56. 62 K=2:GOSUB9:B(L)=B(L)*2:K=3:IFC(L)>21THENCA=-B(L):GOSUB11:C(L)=0
  57. 63 NEXTH,W:FORL=1TO4:IFC(L)=0THENNEXT:K=0:W=0:H=0:C0=C:C=Z%(0,0):L=0:GOSUB9:C=C0:GOSUB75:GOTO29
  58. 64 L=0:K=0:W=0:H=0:C0=C:C=Z%(0,0):A(0)=0:C(0)=0:GOSUB9:K=1:C=Z%(1,0):GOSUB9:C=C0
  59. 65 GOSUB10:IFC(0)<17THENK=K+1:GOSUB9:GOTO65
  60. 66 IFC(0)<22THEN70
  61. 67 PRINTB2$" DEALER BUSTED!":FORW=1TOP:FORH=0TO1:L=W+2*H
  62. 68 IFC(L)>0THENIFC(L)<22THENCA=B(W):GOSUB11
  63. 69 NEXTH,W:GOSUB75:GOTO29
  64. 70 FORW=1TOP:FORH=0TO1:L=W+2*H:IFC(L)=0THEN74
  65. 71 IFC(L)>C(0)THENCA=B(L):GOSUB11:GOTO74
  66. 72 IFC(0)>C(L)THENCA=-B(L):GOSUB11:GOTO74
  67. 73 CA=0:GOSUB11
  68. 74 NEXTH,W:GOSUB75:GOTO29
  69. 75 PRINTD$SP$
  70. 76 PRINTD$BL$"HIT ANY KEY"RO$;
  71. 77 PRINTCU$:IFPEEK(162)AND16THENPRINTRV$;
  72. 78 GETA$:IFA$=""THEN76
  73. 79 RETURN
  74. 80 PRINTSC$CD$CD$CD$TAB(16)RV$"        "
  75. 81 PRINTCHR$(142)TAB(16)RV$" VIC 21 "
  76. 82 PRINTTAB(16)RV$"        ":PRINTTAB(9)CD$CD$"CASINO-STYLE BLACKJACK"
  77. 83 PRINTTAB(9)CD$CD$CD$"MODIFIED BY ALAN CLARKE"
  78. 84 PRINT,CD$CD$"PRESS "RV$"RETURN"RO$" TO BEGIN"
  79. 85 GETI$:IFI$=CHR$(13)THENRETURN
  80. 86 IFI$=""THEN85
  81. 87 L=L+1:IFL>15THENL=0
  82. 88 POKE53280,L:GOTO85
  83. 89 DATAA,2,3,4,5,6,7,8,9,T,J,Q,K
  84. 90 PRINTB2$RV$" BLACKJACK! ":CA=INT(B(W)*1.5):GOSUB11:C(W)=0:RETURN
  85. 92 WR=INT((GW/GP)*100):PRINTB3$BK$"GAMES PLAYED:"GP;
  86. 93 PRINTTAB(19)"WIN RATIO:"WR"%":RETURN
  87. 95 GETA$:ON-(A$="")GOTO95:RETURN
  88. 97 IFB(1)=0THENPRINT,,CU$"QUIT? (Y/N)":GOSUB95:IFA$="Y"THENPRINTSC$:END
  89. 98 PRINTRV$;:GOTO34
  90. 100 HM$=CHR$(19):SC$=CHR$(147):CD$=CHR$(17):CU$=CHR$(145):Z$=CHR$(32)
  91. 110 CR$=CHR$(29):CL$=CHR$(157):BK$=CHR$(144):GR$=CHR$(30):BL$=CHR$(31)
  92. 120 PU$=CHR$(156):RV$=CHR$(18):RO$=CHR$(146):DC$=CHR$(166)
  93. 125 SU$=CHR$(218)+CHR$(211)+CHR$(193)+CHR$(216)
  94. 130 D$=HM$:FORL=1TO20:D$=D$+CD$:NEXT
  95. 140 B1$=LEFT$(D$,15):B2$=LEFT$(D$,17):B3$=LEFT$(D$,19)
  96. 150 FORL=1TO40:R$=R$+CR$:NEXT:FORL=1TO40:SP$=SP$+Z$:NEXT
  97. 160 RETURN
  98. 200 PRINT"/"RV$"S"RO$"PLIT":SF=1:RETURN
  99. 250 PRINT,,"BET        "CL$CL$CL$CL$CL$CL$CL$CL$;:RETURN
  100. 300 PRINTPU$DC$DC$DC$CD$CL$CL$CL$DC$DC$DC$CD$CL$CL$CL$DC$DC$DC$;:RETURN
  101. 310 REM ** LAST UPDATE 3-27-85 **
  102.